home *** CD-ROM | disk | FTP | other *** search
/ Aminet 22 / Aminet 22 (1997)(GTI - Schatztruhe)[!][Dec 1997].iso / Aminet / dev / misc / gms_e.lha / GMSDev / EModules / gms / sound.e < prev    next >
Text File  |  1997-08-19  |  4KB  |  173 lines

  1. /*
  2. **  $VER: sound.e V0.8B
  3. **
  4. **  Sound definitions.
  5. **
  6. **  (C) Copyright 1996-1997 DreamWorld Productions.
  7. **      All Rights Reserved
  8. */
  9.  
  10. OPT MODULE
  11. OPT EXPORT
  12. OPT PREPROCESS
  13.  
  14. MODULE 'games/games'
  15.  
  16. /****************************************************************************
  17. ** Sound Object.
  18. */
  19.  
  20. CONST SMVERSION = 1
  21.  
  22. OBJECT sound
  23.   head[1]   :ARRAY OF head
  24.   channel   :INT    -> Channel, 0-3 
  25.   priority  :INT    -> Priority, 0-127 
  26.   header    :LONG   -> Ptr to sample info header, if any 
  27.   data      :LONG   -> Address of sample data 
  28.   length    :LONG   -> Length of sample data in WORDS 
  29.   octave    :INT    -> Octave/Note setting 
  30.   volume    :INT    -> Volume of sample (1 - 100) 
  31.   attrib    :LONG   -> Sound attributes.
  32.   source    :LONG   -> Where the sound comes from.
  33.   frequency :LONG   -> Frequency of sampled sound.
  34. ENDOBJECT
  35.  
  36. CONST SA_CHANNEL   = $40000000+12,
  37.       SA_PRIORITY  = $40000000+14,
  38.       SA_HEADER    = $C0000000+16,
  39.       SA_DATA      = $C0000000+20,
  40.       SA_LENGTH    = $80000000+24,
  41.       SA_OCTAVE    = $40000000+28,
  42.       SA_VOLUME    = $40000000+30,
  43.       SA_ATTRIB    = $80000000+32,
  44.       SA_SOURCE    = $C0000000+36,
  45.       SA_FREQUENCY = $80000000+40
  46.  
  47. -> Flags for SAM_Channel 
  48.  
  49. CONST ALLCHANNELS = -1, -> Search for first available channel 
  50.       CHANNEL1    = 0,  -> Channel 1 (left speaker) 
  51.       CHANNEL2    = 1,  -> Channel 2 (right speaker) 
  52.       CHANNEL3    = 2,  -> Channel 3 (left speaker) 
  53.       CHANNEL4    = 3   -> Channel 4 (right speaker) 
  54.  
  55. -> Flags for SAM_Attrib 
  56.  
  57. CONST SBIT8   = $00000000,  -> Sound data is 8 bit (set if raw)
  58.       SBIT16  = $00000001,  -> Sound data is 16 bit (set if raw)
  59.       SMODVOL = $00000002,  -> Modulate volume with next channel 
  60.       SMODPER = $00000004,  -> Modulate period with next channel 
  61.       SREPEAT = $00000008,  -> Repeat sample forever 
  62.       SEMPTY  = $00000010,  -> Play only if channel is empty
  63.       SLEFT   = $00000020,  -> Left speaker preferred.
  64.       SRIGHT  = $00000040,  -> Right speaker preferred.
  65.       SFORCE  = $00000080   -> Enforce use of selected speaker.
  66.  
  67. -> Octave definitions for Sound.Octave.  An 'S' at the end of an octave
  68. -> definition indicates a sharp note.
  69.  
  70. CONST OCT_G0S = 0,
  71.  OCT_G0  = 2,
  72.  OCT_F0S = 4,
  73.  OCT_F0  = 6,
  74.  OCT_E0  = 8,
  75.  OCT_D0S = 10,
  76.  OCT_D0  = 12,
  77.  OCT_C0S = 14,
  78.  OCT_C0  = 16,
  79.  OCT_B0  = 18,
  80.  OCT_A0S = 20,
  81.  OCT_A0  = 22,
  82.  
  83.  OCT_G1S = 24,
  84.  OCT_G1  = 26,
  85.  OCT_F1S = 28,
  86.  OCT_F1  = 30,
  87.  OCT_E1  = 32,
  88.  OCT_D1S = 34,
  89.  OCT_D1  = 36,
  90.  OCT_C1S = 38,
  91.  OCT_C1  = 40,
  92.  OCT_B1  = 42,
  93.  OCT_A1S = 44,
  94.  OCT_A1  = 46,
  95.  
  96.  OCT_G2S = 48,
  97.  OCT_G2  = 50,
  98.  OCT_F2S = 52,
  99.  OCT_F2  = 54,
  100.  OCT_E2  = 56,
  101.  OCT_D2S = 58,
  102.  OCT_D2  = 60,
  103.  OCT_C2S = 62,
  104.  OCT_C2  = 64,
  105.  OCT_B2  = 66,
  106.  OCT_A2S = 68,
  107.  OCT_A2  = 70,
  108.  
  109.  OCT_G3S = 72,
  110.  OCT_G3  = 74,
  111.  OCT_F3S = 76,
  112.  OCT_F3  = 78,
  113.  OCT_E3  = 80,
  114.  OCT_D3S = 82,
  115.  OCT_D3  = 84,
  116.  OCT_C3S = 86,
  117.  OCT_C3  = 88,
  118.  OCT_B3  = 90,
  119.  OCT_A3S = 92,
  120.  OCT_A3  = 94,
  121.  
  122.  OCT_G4S = 96,
  123.  OCT_G4  = 98,
  124.  OCT_F4S = 100,
  125.  OCT_F4  = 102,
  126.  OCT_E4  = 104,
  127.  OCT_D4S = 106,
  128.  OCT_D4  = 108,
  129.  OCT_C4S = 110,
  130.  OCT_C4  = 112,
  131.  OCT_B4  = 114,
  132.  OCT_A4S = 116,
  133.  OCT_A4  = 118,
  134.  
  135.  OCT_G5S = 120,
  136.  OCT_G5  = 122,
  137.  OCT_F5S = 124,
  138.  OCT_F5  = 126,
  139.  OCT_E5  = 128,
  140.  OCT_D5S = 130,
  141.  OCT_D5  = 132,
  142.  OCT_C5S = 134,
  143.  OCT_C5  = 136,
  144.  OCT_B5  = 138,
  145.  OCT_A5S = 140,
  146.  OCT_A5  = 142,
  147.  
  148.  OCT_G6S = 144,
  149.  OCT_G6  = 146,
  150.  OCT_F6S = 148,
  151.  OCT_F6  = 150,
  152.  OCT_E6  = 152,
  153.  OCT_D6S = 154,
  154.  OCT_D6  = 156,
  155.  OCT_C6S = 158,
  156.  OCT_C6  = 160,
  157.  OCT_B6  = 162,
  158.  OCT_A6S = 164,
  159.  OCT_A6  = 166,
  160.  
  161.  OCT_G7S = 168,
  162.  OCT_G7  = 170,
  163.  OCT_F7S = 172,
  164.  OCT_F7  = 174,
  165.  OCT_E7  = 176,
  166.  OCT_D7S = 178,
  167.  OCT_D7  = 180,
  168.  OCT_C7S = 182,
  169.  OCT_C7  = 184,
  170.  OCT_B7  = 186,
  171.  OCT_A7S = 188
  172.  
  173.